FIG. 1a is a block diagram 120 of a conventional networking environment illustrating the arrangements of various communication and storage entities. Referring to FIG. 1a, there is shown a wide area network (WAN) 110 comprising a plurality of local area networks (LANs) 102, 104, 106, 108 and a router 132. The LANs 102, 104, 106, 108 are coupled via the router 132. The LAN 102 comprises PCs 112, 116, 120, servers 126, 128 and data storage elements 114, 118, 122, 124 and 130.
The data storage element 114 may be coupled to the PC 112, the data storage element 118 may be coupled to the PC 116 and the data storage element 122 may be coupled to the PC 120. The data storage element 124 may be coupled to the server 126 and the data storage element 130 may be coupled to the server 128. The LANs 104, 106, 108 may also comprise a plurality of PCs, data storage elements and servers which may be configured in a somewhat similar manner as in LAN 102.
In operation, the PCs 112, 116, 120 may communicate with each other and with the servers 126, 128 via the LAN 102. The PCs 112, 116, 120 may communicate with communication entities coupled to the LANs 104, 106, 108 via the router 132. Additionally, the communication entities coupled to the LANs 104, 106, 108 may also communicate with the PCs 112, 116, 120, servers 126, 128, and the data storage elements 114, 118, 122, 124, 130 via the router 132.
A major drawback with the configuration of the conventional networking environment of FIG. 1a is that the bandwidth of the PC's connection or link to the LAN and the server's connection or link to the LAN may severely affect the performance of a communication network. Furthermore, the processing bandwidth of the PC's and the servers may further decrease system performance by introducing delays, which results in increased system latency. For example, it may be desirable for PC 112 to communicate with PC 120 in order to acquire information from the data storage element 122. Accordingly, if the network connections coupling the PC 112 and the PC 120 are slow, then these connections will limit communication between PC 112 and PC 120. Performance of the communication between PC 112 and PC 120 may be further limited or degraded in cases where the processing bandwidth for the PC 112 and PC 120 are low. Furthermore, during operation, multiple PCs may be attempting to communicate with the PC 120 in order to acquire information from the data storage element 120 while the PC 112 is simultaneously communicating with the PC 120. In this regard, as the number of communication entities attempting to acquire information from the data storage element 122 increases, the limited processing bandwidth and communication bandwidth of the PC 112 and the PC 120 may result in further delays and increased latency. The PCs 112, 116, 120, therefore, become bottlenecks.
In another example, it may be desirable for PC 120 to communicate with server 126 in order to acquire information from the data storage element 124. Accordingly, if the network connections coupling the PC 120 and the server 126 are slow, then these connections will limit communication between PC 120 and server 126. Performance of the communication between PC 120 and server 126 may be further limited or degraded in cases where the processing bandwidth for the PC 120 and server 126 are low. Furthermore, during operation, multiple PCs such as PCs 112, 116 may be attempting to communicate with the server 126 in order to acquire information from the data storage element 124, while the PC 120 is simultaneously communicating with the server 126. In this regard, as the number of communication entities attempting to acquire information from the data storage element 124 via the server 126 increases, the limited processing bandwidth and communication bandwidth of the PC 120 and the server 126 may result in further delays and increased latency. Although the bandwidth of the connections of the PCs and servers to the LAN may be increased by adding higher bandwidth connections, this can be a costly venture. Similarly, the processing bandwidth may also be increased by adding faster processors but the cost may be prohibitive.
FIG. 1b is a block diagram 130 of an improved conventional networking environment illustrating the arrangements of various communication and storage entities, which addresses some of the drawbacks of the networking environment of FIG. 1a. Referring to FIG. 1b, there is shown a wide area network (WAN) 110 comprising a plurality of local area networks (LANs) 102, 104, 106, 108 and a router 132. The LANs 102, 104, 106, 108 are coupled via the router 132. The LAN 102 comprises PCs 112, 116, 120, servers 126, 128 and data storage elements 132 and 134.
The data storage element 134 may comprise a plurality of storage devices such as a disk array, which may be coupled to the server 126. The data storage element 136 may also comprise a plurality of storage devices such as a disk array, which may be coupled to the server 128. The LANs 104, 106, 108 may also comprise a plurality of PCs, data storage elements and servers which may be configured in a somewhat similar manner as in LAN 102.
During operation, the PCs 112, 116, 120 may communicate with each other and with the servers 126, 128 via the LAN 102. The PCs 112, 116, 120 may also communicate with communication entities coupled to the LANs 104, 106, 108 via the router 132. Additionally, the communication entities coupled to the LANs 104, 106, 108 may also communicate with the PCs 112, 116, 120, servers 126, 128, and the data storage elements 134, 136.
When compared to the networking environment of FIG. 1a, the servers 126, 128 may be configured so that they have much greater communication and processing bandwidth that the PCs 112, 116, 120. Notwithstanding, although the networking environment configuration of FIG. 1b may provide better performance than the networking environment of FIG. 1a, one drawback with the configuration of FIG. 1b is that the servers 126, 128 are now bottlenecks. In this regard, as the number of connections to the servers requesting information from the data storage entities 134, 136 increases, the servers themselves will become bottlenecks resulting is degradation of system performance. For example, in instances when the PCs 112, 116, 120 and other networking communication entities coupled to the LANs 104, 106, 108 simultaneously acquire information from the servers 126 and/or 128, some connections may be blocked since the servers 126 may not have the capacity to handle all the connections.
FIG. 1c is a block diagram 140 of an improved conventional networking environment illustrating the arrangements of various communication and storage entities, which addresses some of the drawbacks of the networking environment of FIG. 1a and FIG. 1b. Referring to FIG. 1c, there is shown a wide area network (WAN) 110 comprising a plurality of local area networks (LANs) 102, 104, 106, 108, a router 132 and a storage area network (SAN) 142. The LANs 102, 104, 106, 108 are coupled via the router 132. The LAN 102 comprises PCs 112, 116, 120 and servers 126, 128. The storage area network 142 comprises data storage elements 144, 146 and 148.
The data storage elements 144, 146, 148 may comprise a plurality of storage devices such as disk arrays, which may be coupled to the servers 126, 128 via the storage access network 142. Each of the LANs 104, 106, 108 may also comprise a plurality of PCs and servers which may be configured in a somewhat similar manner as in LAN 102. One or more servers coupled to the LANs 104, 106, 108 may also be coupled to the storage area network 142 or may communicate with data storage elements 144, 146, 148 via the storage area network 148. Since any of the LANs 102, 104, 106, 108 may communicate directly or indirectly with the storage area network 142, information stored in the data storage elements 144, 146, 148 may be more readily accessible without encountering the bottlenecks previously associated with the networking environments of FIG. 1a and FIG. 1b. 
FIG. 2 is a block diagram of an exemplary local area network (LAN) coupled to a storage area network (SAN). Referring to FIG. 2, there is shown LANs 202, 204, 206, 208 and storage access network (SAN) 240. The LAN 202 may comprise PCs 210, 212, 214, and servers 216, 218. The storage area network 240 may comprise a fibre channel (FC) switch 224, file servers (FSs) 226, 228, 230 and a plurality of data storage elements 232, 234, 236. Each of the data storage elements 232, 234, 236 may comprise a plurality of fibre channel hard disks.
The storage access network 240 may be coupled to the LAN 202 via host bus adapters (HBAs) 220, 222, which interfaces with the servers. In this regard, the host bus adapter 220 may be configured to interface with the fibre channel switch 224 and the server 216, and the host bus adapter 222 may be configured to interface with the fibre channel switch 224 and the server 218. The file server 226 may be coupled to the data storage element 232, the file server 228 may be coupled to the data storage element 234 and the file server 230 may be coupled to the data storage element 236.
The file servers 216, 218 may comprise a plurality of ports to which a data storage device such as a hard disk may be coupled. Each of the file server's plurality of ports may be electrically and/or optically coupled to a single storage element such as a hard disk. In this regard, each of the file servers 226, 228, 230 supports a single point-to-point connection with a particular hard disk.
The fibre channel switch 224 may be adapted to switch connections between servers and the file servers. For example, the fibre channel switch 224 may be adapted to switch connections from the server 216 to any of the file servers 226, 228, 230 in order to provide access to the data storage elements 232, 234, 236 respectively. Similarly, the fibre channel switch 224 may be adapted to switch connections from the server 216 to any of the file servers 226, 228, 230 in order to provide access to any one or more of the data storage elements 232, 234, 236 respectively.
In operation, PC 214 may utilize any of the servers 216, 218 to retrieve information from any of the file servers 232, 234, 236. In a case where PC 214 establishes a connection with server 216 in order to retrieve information from the file server 236, then the fibre channel switch 224 may switch the connection from the server 216 to the file server 236. In another example, a communication device coupled to LAN 204 may establish a connection with server 218 in order to retrieve information from the file server 234. The fibre channel switch 224 may switch the connection from the server 218 to the file server 234.
Although the networking environment of FIG. 2 provides significantly increased performance over the conventional networking environments illustrated in FIG. 1a, FIG. 1b and FIG. 1c, a major drawback with the networking environment of FIG. 2 is its point-to-point communication link existing between each of the hard disks and each of the plurality of file server ports. In particular, the point-to-point communication links existing between each of the hard disks and the file server ports can be quite expensive to operate and/or maintain.
Since data availability is the lifeline of every business, data loss is not only intolerable but its loss may interrupt daily operation and cause significant loss of revenue. In order to improve data availability, components with higher MTBF are required and systems are generally subjected to and are required pass a rigorous suite or battery of tests. In order to prevent data loss, storage systems which utilize, for example, fibre channel (FC) drives, are designed with a dual loop architecture which is adapted to facilitate data access through the second loop which may be utilized to provide redundancy.
FIG. 3 is a block diagram of a conventional fibre channel arbitrated loop arrangement which may be utilized for coupling a plurality of hard disks which may be found in the data storage entities of FIG. 1a, FIG. 1b, FIG. 1c and FIG. 2. Referring to FIG. 3, there is shown a server 302, a host bus adapter 304, and a plurality of hard disks, namely, 306a, 306b, 306c, 306d, 306e, 306f, 306g, 306h, 306i, 306j and 306k. Each of the hard disks 306a, . . . , 306k may comprise a port bypass controller and repeater (PBC/R) block. Each of the port bypass controller and repeater blocks may comprise a dual port architecture for redundancy.
The host bus adapter 304 interfaces with the server 302 and couples the hard disks to the server 302. The hard disks 306a, . . . , 306k are arranged in a loop or ring configuration with the first hard disk 306a in the ring coupled to the host bus adapter 304. The second hard disk 306b is coupled to the first hard disk 306b and the third hard disk 306c is coupled to the second hard disk 306b. The remaining hard disks are coupled or chained in a similar arrangement with the last hard disk 306k in the chain or loop being coupled to the host bus adapter 304. The last hard disk 306k is also chained to hard disk 306j. The fibre channel arbitrated loop (FC-AL) arrangement is a ring arrangement that is somewhat similar in arrangement to a token ring configuration, but only with regard to their configuration. With regard to its operation, the fibre channel arbitrated loop does not utilize a token for facilitating communication between nodes on the loop. Rather, the fibre channel arbitrated loop utilizes an arbitrated loop address to facilitate communication between the nodes that are coupled to the loop.
Each of the hard disks that are on the fibre channel arbitrated loop, which may also be referred to as a ring, share the bandwidth allocated for the loop. Communication over the loop occurs on a point-to-point basis between an initiating hard disk and a destination hard disk. At any particular instant during which communication occurs over the loop, only two (2) ports, may be active at the same time. The two ports that are active include the port that won loop arbitration and the port that is in communication that won the arbitration. The port that has won the arbitration may be referred to as the initiating port and the port in communication with the port that won the arbitration may be referred to as the destination port. Traffic does not have to be routed between the initiating port and destination port since there is point-to-point communication between the initiating port and the destination port. During communication, ports other than the initiating port and the destination port in the loop are adapted to receive frames and forward the received frames to successive ports in the loop. The received frames may be data frames and control frames such as acknowledgements and ready frames. A major drawback with this type of receive and forward scheme is the increased latency penalty introduced and incurred by each successive port in the loop.
Some fibre channel arbitrated loop implementations such as the implementation illustrated in FIG. 3 were based on analog port bypass controller (PBC) and repeaters (R). The combination of loop architecture with the port bypass controller were prone to problems which often resulted in catastrophic loop failures since one hard disk could potentially affect the operation of all the other hard disks in the loop. These port bypass controller implementations required operators or service technicians to insert and/or remove each hard disk individually in order to determine and/or isolate the actual location of a loop failure or failed hard disk. Furthermore, an overwhelming majority of these failures were signal integrity related.
The ports in these conventional port bypass controllers also suffer from relatively high latencies. Furthermore, expensive test equipment and/or networking software have to be deployed in order to diagnose problems that may be occurring at the hardware level. Accordingly, maintaining networking equipment containing these port bypass controllers may be quite an expensive task.
Further limitations and disadvantages of conventional and traditional approaches will become apparent to one of skill in the art, through comparison of such systems with some aspects of the present invention as set forth in the remainder of the present application with reference to the drawings.